home *** CD-ROM | disk | FTP | other *** search
-
-
-
-
-
-
-
-
-
- README for XFree86 on FreeBSD
-
- Rich Murphey, David Dawes
-
- 16 May 1997
-
-
-
- 1. What and Where is XFree86?
-
- XFree86 is a port of X11R6.3 that supports several versions of Intel-based
- Unix. It is derived from X386 1.2, which was the X server distributed with
- X11R5. This release consists of many new features and performance improvements
- as well as many bug fixes.
-
- For further details about this beta release, please refer to the Release Notes.
-
- See the Copyright Notice.
-
- Binaries for XFree86 on FreeBSD 2.1.x, 2.2.x and 3.0-current are available
- from:
-
- ftp://ftp.XFree86.org/pub/XFree86/beta/
-
- Send email to Rich-Murphey@Rice.edu or XFree86@XFree86.org if you have comments
- or suggestions about this file and we'll revise it.
-
-
- 2. Installing the Binaries
-
- If you want to save space, first select which archives you want to unpack. If
- you can't decide what to pick and you have 52Mb of disk space, it's safe to
- unpack everything.
-
- At a minimum you need to unpack the 'required' X33*.tgz archives plus at least
- one server that matches your vga card. You'll need 13Mb for the minimum
- required run-time binaries only.
-
- Required:
-
- X33bin.tgz
- all the executable X client applications and shared
- libs
-
- X33fnts.tgz
- the misc, 75 dpi and PEX fonts
-
- X33lib.tgz
- data files needed at runtime
-
- Required unless you have already customized your configuration files:
-
-
-
- README for XFree86 on FreeBSD
-
-
-
-
-
- README for XFree86 on FreeBSD
-
-
-
- X33cfg.tgz
- customizable xinit and xdm runtime configuration files
-
- Choose at least one server:
-
- X338514.tgz
- 8-bit color for IBM 8514 and true compatibles.
-
- X33AGX.tgz
- 8 and 16-bit color for AGX and XGA boards.
-
- X33I128.tgz
- 8 and 16-bit color for I128 boards.
-
- X33Ma32.tgz
- 8 and 16-bit color for ATI Mach32 boards.
-
- X33Ma64.tgz
- 8, 16 and 32-bit color for ATI Mach64 boards.
-
- X33Ma8.tgz
- 8-bit color for ATI Mach8 boards.
-
- X33Mono.tgz
- 1-bit monochrome for VGA, Super-VGA, Hercules, and oth-
- ers.
-
- X33P9K.tgz
- 8, 16, and 32-bit color for Weitek P9000 boards (Dia-
- mond Viper).
-
- X33S3.tgz
- 8, 16 and 32-bit color for S3 boards.
-
- X33S3V.tgz
- 8 and 16-bit color for S3 ViRGE boards.
-
- X33SVGA.tgz
- >=8-bit color for Super-VGA cards.
-
- X33VG16.tgz
- 4-bit color for VGA and Super-VGA cards
-
- X33W32.tgz
- 8-bit Color for ET4000/W32, /W32i, /W32p and ET6000
- cards.
-
- X339GAN.tgz
- 8-bit color for PC98 GA-98NB/WAP boards
-
- X339480.tgz
- 8-bit color for PC98 PEGC
-
-
-
-
-
-
-
-
-
-
- README for XFree86 on FreeBSD
-
-
-
- X339NKV.tgz
- 8-bit color for PC98 NEC-CIRRUS/EPSON NKV/NKV2 boards
-
- X339WBS.tgz
- 8-bit color for PC98 WAB-S boards
-
- X339WEP.tgz
- 8-bit color for PC98 WAB-EP boards
-
- X339WSN.tgz
- 8-bit color for PC98 WSN-A2F boards
-
- X339EGC.tgz
- 4-bit color for PC98 EGC
-
- X339TGU.tgz
- 8 and 16-bit color for PC98 Trident Cyber9320/9680
- boards
-
- X339NS3.tgz
- 8 and 16-bit color for PC98 NEC S3 boards
-
- X339SPW.tgz
- 8 and 16-bit color for PC98 S3 PW/PCSKB boards
-
- X339LPW.tgz
- 8 and 16-bit color for PC98 S3 PW/LB boards
-
- X339GA9.tgz
- 8 and 16-bit color for PC98 S3 GA-968 boards
-
- X33nest.tgz
- A nested server running as a client window on another
- display.
-
- Optional:
-
- X32doc.tgz
- READMEs
-
- X32ps.tgz
- READMEs in PostScript
-
- X32html.tgz
- READMEs in HTML
-
- X32man.tgz
- man pages
-
- X32f100.tgz
- 100dpi fonts
-
- X32fscl.tgz
- Speedo and Type1 fonts
-
-
-
-
-
-
-
-
- README for XFree86 on FreeBSD
-
-
-
- X32fnon.tgz
- Japanese, Chinese and other non-english fonts
-
- X32fcyr.tgz
- Cyrillic fonts
-
- X32fsrv.tgz
- the font server and its man page
-
- X32prog.tgz
- config, lib*.a and *.h files needed only for compiling
-
- 2.1 Full Install:
-
- 1. You must be logged in as root to unpack the archives because several
- executables are set-user-id. Otherwise the server may abort if you
- unpack it as an ordinary user. You must also use a ``umask'' value of
- 022 because the X server requires special permissions.
-
- % su
- # umask 022
-
-
-
- 2. If you have 52Mb free in the /usr partition ``cd /usr'' and skip to no.
- 4. Otherwise, create a directory on another partition and sym link it
- into /usr:
-
-
- # cd /usr/local
- # mkdir X11R6
- # ln -s /usr/local/X11R6 /usr/X11R6
-
-
-
- 3. Run the preinst.sh script
-
- # cd /usr/X11R6
- # sh preinst.sh
-
-
-
- 4. Unpack everything:
-
- If you are using sh (as root usually does):
-
-
- # for i in X33*.tgz; do
- # tar -x -z --unlink -f $i
- # done
-
-
-
- Else, if you are using csh:
-
-
-
-
-
-
-
-
- README for XFree86 on FreeBSD
-
-
-
- % foreach i (X33*.tgz)
- % tar -x -z --unlink -f $i
- % end
-
-
-
- 5. Create a symbolic link ``X'' that points to the server that matches your
- video card. The XF86_* man pages list which vga chip sets are supported
- by each server. For example, if you have an ET4000 based card you will
- use the XF86_SVGA server:
-
-
- # cd /usr/X11R6/bin; rm X; ln -s XF86_SVGA X
-
- 2.2 Minimal Install:
-
- First do numbers 1, 2 and 4 above. Then unpack the required archives:
-
- # for i in bin fnts lib xicf; do
- # tar -x -z --unlink -f X33$i.tgz
- # done
-
- Then unpack a server archive corresponding to your vga card. The server man
- pages, X11R6/man/man1/XF86_*, list the vga chip sets supported by each server.
- For example, if you have an ET4000 based card you will use the XF86_SVGA
- server:
-
- # tar -x -z --unlink -f X33SVGA.tgz
- # cd /usr/X11R6/bin; rm X; ln -s XF86_SVGA X
-
- 2.3 After either Full or Minimal Install above:
-
- Add /usr/X11R6/bin to the default path for sh in /etc/profile and for csh in
- /etc/csh.login if they are not already there:
-
- # echo 'set path = ($path /usr/X11R6/bin)' >>/etc/csh.login
- # echo 'PATH=$PATH:/usr/X11R6/bin' >>/etc/profile
-
- Or make sure all who use X put /usr/X11R6/bin in their shell's ``path'' vari-
- able.
-
- Next either reboot or invoke ldconfig as root to put the shared libraries in
- ld.so's cache:
-
- # ldconfig /usr/lib /usr/local/lib /usr/X11R6/lib
-
- If you had already configured X11R6/lib/X11/xinit/xinitrc or
- X11R6/lib/X11/xdm/* omit the xinit-config or xdm-config archive or unpack it
- separately and merge in your customizations.
-
- The fscl and f100 archives are optional and can be omitted if you are short on
- space. The optional link archive allows you to reconfigure and customize a X
- server binary. The optional prog archive is needed only for writing or compil-
- ing X applications. The optional pex archive contains pex clients and
-
-
-
-
-
-
-
-
- README for XFree86 on FreeBSD
-
-
-
- libraries for building 3D graphics applications.
-
- NOTE: You don't need to uncompress the font files, but if you uncom-
- press them anyway you must run mkfontdir in the corresponding font
- directory; otherwise your server will abort with the message ``could
- not open default font 'fixed'''.
-
-
- 3. Installing The Display Manager (xdm)
-
- The display manager makes your PC look like an X terminal. That is, it pre-
- sents you with a login screen that runs under X.
-
- The easiest way to automatically start the display manager on boot is to add a
- line in /etc/ttys to start it on one of the unoccupied virtual terminals:
-
- ttyv4 "/usr/X11R6/bin/xdm -nodaemon" xterm on secure
-
- You should also make sure that /usr/X11R6/bin/X is a symbolic link to the
- Xserver that matches your video card or edit the file Xservers in
- /usr/X11R6/lib/X11/xdm to specify the pathname of the X server.
-
- The change to /etc/ttys won't take effect until you either reboot or ``kill
- -HUP 1'' to force initd to reread /etc/ttys. You can also test the display
- manager manually by loging in as root on the console and typing ``xdm -nodae-
- mon''.
-
-
- 4. Configuring X for Your Hardware
-
- The XF86Config file tells the X server what kind of monitor, video card and
- mouse you have. You must create it to tell the server what specific hardware
- you have.
-
- It is strongly recommended that you use either the `XF86Setup' utility (which
- requires the VGA16 server to be installed), or the `xf86config' utility to gen-
- erate an XF86Config file.
-
- In order to protect your hardware from damage, the server no longer will read
- XF86Config files from a user's home directory, but requires that it be in
- /etc/XF86Config, /usr/X11R6/lib/X11/XF86Config.hostname or
- /usr/X11R6/lib/X11/XF86Config.
-
- You'll need info on your hardware:
-
- o Your mouse type, baud rate and its /dev entry.
-
- o The video card's chipset (e.g. ET4000, S3, etc).
-
- o Your monitor's sync frequencies.
-
- The easiest way to find which device your mouse is plugged into is to use
- ``cat'' or ``kermit'' to look at the output of the mouse. Connect to it and
- just make sure that it generates output when the mouse is moved or clicked:
-
-
-
-
-
-
-
-
- README for XFree86 on FreeBSD
-
-
-
- % cat < /dev/tty00
-
- If you can't find the right mouse device then use ``dmesg|grep sio'' to get a
- list of devices that were detected upon booting:
-
- % dmesg|grep sio
- sio0 at 0x3f8-0x3ff irq 4 on isa
-
- Then double check the /dev entries corresponding to these devices. Use the
- script /dev/MAKEDEV to create entries if they don't already exist:
-
- % cd /dev
- % sh MAKEDEV tty00
-
- If you plan to fine tune the screen size or position on your monitor you'll
- need the specs for sync frequencies from your monitor's manual.
-
-
- 5. Running X
-
- 8mb of memory is a recommended minimum for running X. The server, window man-
- ager, display manager and an xterm take about 8Mb of virtual memory themselves.
- Even if their resident set size is smaller, on a 8Mb system that leaves very
- space for other applications such as gcc that expect a few meg free. The R6 X
- servers may work with 4Mb of memory, but in practice compilation while running
- X can take 5 or 10 times as long due to constant paging.
-
- The easiest way for new users to start X windows is to type ``startx >&
- startx.log''. Error messages are lost unless you redirect them because the
- server takes over the screen.
-
- To get out of X windows, type: ``exit'' in the console xterm. You can cus-
- tomize your X by creating .xinitrc, .xserverrc, and .twmrc files in your home
- directory as described in the xinit and startx man pages.
-
-
- 6. Rebuilding Kernels for X
-
- The GENERIC FreeBSD kernels support XFree86 without any modifications required.
- You do not need to make any changes to the GENERIC kernel or any kernel config-
- uration which is a superset.
-
- For a general description of BSD kernel configuration get smm.02.config.ps.Z
- <URL:ftp://gatekeeper.dec.com/pub/BSD/manuals/smm.02.config.ps.Z>. It is a
- ready-to-print postscript copy of the kernel configuration chapter from the
- system maintainers manual.
-
- If you do decide to reduce your kernel configuration file, do not remove the
- two lines below (in /sys/arch/i386/conf). They are both required for X sup-
- port:
-
- options XSERVER #Xserver
- options UCONSOLE #X Console support
-
-
-
-
-
-
-
-
-
- README for XFree86 on FreeBSD
-
-
-
- The generic FreeBSD kernels are configured by default with the syscons driver.
- To configure your kernel similarly it should have a line like this in
- /usr/src/sys/i386/conf/GENERIC:
-
- device sc0 at isa? port "IO_KBD" tty irq 1 vector scintr
-
- The number of virtual consoles can be set using the NCONS option:
-
- options "NCONS=4" #4 virtual consoles
-
- Otherwise, the default without a line like this is 12. You must have more VTs
- than gettys as described in the end of section 3, and 4 is a reasonable mini-
- mum.
-
- The server supports several console drivers: pccons, syscons and pcvt. The
- syscons driver is the default in FreeBSD 1.1.5 and higher. They are detected
- at runtime and no configuration of the server itself is required.
-
- The XFree86 servers include support for the MIT-SHM extension. The GENERIC
- kernel does not support this, so if you want to make use of this, you will need
- a kernel configured with SYSV shared memory support. To do this, add the fol-
- lowing line to your kernel config file:
-
- options SYSVSHM # System V shared memory
- options SYSVSEM # System V semaphores
- options SYSVMSG # System V message queues
-
- If you are using a SoundBlaster 16 on IRQ 2 (9), then you need a patch for
- sb16_dsp.c. Otherwise a kernel configured with the SoundBlaster driver will
- claim interrupt 9 doesn't exist and X server will lock up.
-
- S3 cards and serial port COM 4 cannot be installed together on a system because
- the I/O port addresses overlap.
-
-
- 7. Building X Clients
-
- The easiest way to build a new client (X application) is to use xmkmf if an
- Imakefile is included with it. Type ``xmkmf -a'' to create the Makefiles, then
- type ``make''. Whenever you install additional man pages you should update
- whatis.db by running ``makewhatis /usr/X11R6/man''.
-
- Note: Starting with XFree86 2.1 and FreeBSD 1.1, the symbol __386BSD__ no
- longer gets defined either by the compiler or via the X config files for
- FreeBSD systems. When porting clients to BSD systems, make use of the symbol
- BSD for code which is truly BSD-specific. The value of the symbol can be used
- to distinguish different BSD releases. For example, code specific to the Net-2
- and later releases can use:
-
- #if (BSD >= 199103)
-
- To ensure that this symbol is correctly defined, include <sys/param.h> in the
- source that requires it. Note that the symbol CSRG_BASED is defined for *BSD
- systems in XFree86 3.1.1 and later. This should be used to protect the
-
-
-
-
-
-
-
-
- README for XFree86 on FreeBSD
-
-
-
- inclusion of <sys/param.h>.
-
- For code that really is specific to a particular i386 BSD port, use __FreeBSD__
- for FreeBSD, __NetBSD__ for NetBSD, __OpenBSD__ for OpenBSD, __386BSD__ for
- 386BSD, and __bsdi__ for BSD/386.
-
-
- 8. Thanks
-
- Many thanks to:
-
- o Pace Willison for providing initial *BSD support.
-
- o Amancio Hasty for 386BSD kernel and S3 chipset support.
-
- o David Greenman, Nate Williams, Jordan Hubbard for FreeBSD kernel support.
-
- o Rod Grimes, Jordan Hubbard and Jack Velte for the use of Walnut Creek
- Cdrom's hardware.
-
- o Orest Zborowski, Simon Cooper and Dirk Hohndel for ideas from the Linux
- distribution.
-
- Generated from XFree86: xc/programs/Xserver/hw/xfree86/doc/sgml/FreeBSD.sgml,v 3.25.2.1 1997/05/17 12:03:29 dawes Exp $
-
-
-
-
-
- $XConsortium: FreeBSD.sgml /main/12 1996/10/28 05:43:08 kaleb $
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- README for XFree86 on FreeBSD
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- CONTENTS
-
-
-
- 1. What and Where is XFree86? ............................................... 1
-
- 2. Installing the Binaries .................................................. 1
- 2.1 Full Install: ........................................................ 4
- 2.2 Minimal Install: ..................................................... 5
- 2.3 After either Full or Minimal Install above: .......................... 5
-
- 3. Installing The Display Manager (xdm) ..................................... 6
-
- 4. Configuring X for Your Hardware .......................................... 6
-
- 5. Running X ................................................................ 7
-
- 6. Rebuilding Kernels for X ................................................. 7
-
- 7. Building X Clients ....................................................... 8
-
- 8. Thanks ................................................................... 9
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- i
-
-
-